RAIS  3.2
C:/Projekte/RAIS/Specific Masks/RADEVSearchTool.aspx.cs
Go to the documentation of this file.
00001 using System;
00002 using System.Data;
00003 using System.Text;
00004 using System.Configuration;
00005 using System.Collections;
00006 using System.Web;
00007 using System.Web.Security;
00008 using System.Web.UI;
00009 using System.Web.UI.WebControls;
00010 using System.Web.UI.WebControls.WebParts;
00011 using System.Web.UI.HtmlControls;
00012 using System.Collections.Generic;
00013 using System.IO;
00014 
00015 using RAIS.Common.RADEVSearchClasses;
00016 using RAIS.Common.DynamicMaskManagement;
00017 using RAIS.Common.UserManagement;
00018 using RAIS.ApplicationLogicLayer;
00019 using RAIS.UI.Common;
00020 using RAIS.Common;
00021 using RAIS.Common.RADEVClasses;
00022 
00023 namespace RAIS.UI.SpecificMasks
00024 {
00028     public partial class RADEVSearchTool : System.Web.UI.Page
00029     {
00030         //*********************************************************************
00031         #region Properties
00032 
00035         protected UserData CurrentUser
00036         {
00037             get { return (UserData)this.Session[UI.Common.Constants.CURRENT_USER_TAG]; }
00038         }
00039 
00040         protected RADEVSearchResult SearchResultObject 
00041         { 
00042             get 
00043             {
00044                 if (Session["RADEVSearchResultObject"] == null)
00045                     Session["RADEVSearchResultObject"] = new RADEVSearchResult(GetSearchCriterias(), this.CurrentUser.ID, RadioButtonList1.SelectedIndex == 1);
00046                 return (RADEVSearchResult)Session["RADEVSearchResultObject"];
00047             }
00048             set { Session["RADEVSearchResultObject"] = value; }
00049         }
00050 
00051         protected List<RADEVRow> RADEVSearchResultRows 
00052         {
00053             get
00054             {
00055                 if (Session["RADEVSearch"] == null)
00056                     Session["RADEVSearch"] = SearchResultObject.GetResult();
00057                 return (List<RADEVRow>)Session["RADEVSearch"];
00058             }
00059             set { Session["RADEVSearch"] = value; }
00060         }
00061 
00062         protected string LastSortCriteria
00063         {
00064             get
00065             {
00066                 if (Session["LastSortCriteria"] == null)
00067                     Session["LastSortCriteria"] = "";
00068                 return (string)Session["LastSortCriteria"];
00069             }
00070             set { Session["LastSortCriteria"] = value; }
00071         }
00072         #endregion
00073         #region Event handlers
00074         protected void Page_PreLoad(object sender, EventArgs e)
00075         {
00076             RAIS.UI.Common.PageManagement.TrimTextBoxValues(this);
00077         }
00084         protected void Page_Load(object sender, EventArgs e)
00085         {
00086                         this.Response.Cache.SetNoStore();
00087                         if (this.CurrentUser == null)
00088                 UI.Common.AccessManagement.SignOut(this);
00089 
00090             if (Request["mode"] == "Report")
00091                 BTNsearch.Visible = false;
00092             else
00093                 ReportArea.Visible = false;
00094 
00095             if (Request["DataType"] != null)
00096             {
00097                 ValidateData();
00098                 return;
00099             }
00100 
00101             HideControls();
00102 
00103             if (!this.IsPostBack)
00104             {
00105                 FillLists();
00106                 this.LBLtools.ForeColor = RAIS.UI.Common.Constants.COLOR_OF_MENU_BAR_TEXT_HIGHLIGHT;
00107                 InitPage();
00108                 InitControls();
00109                 RAIS.UI.Common.PageManagement.SelectTreeNode(TreeView1.Nodes[0].ChildNodes, "_URL_PREFIX~/RADEVSearchTool.aspx");
00110                 TreeView1.SelectedNodeStyle.ForeColor = RAIS.UI.Common.Constants.COLOR_OF_MENU_BAR_TEXT_HIGHLIGHT;
00111                         }
00112             UI.Common.PageManagement.InitHelpMainMenu(LBTNdefault);
00113         }
00120         protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
00121         {
00122             UI.Common.UserManagement.ProcessTreeViewOnRedirect(this.TreeView1);
00123         }
00130         protected void LBTNlogout_Click(object sender, EventArgs e)
00131         {
00132             UI.Common.AccessManagement.SignOut(this);
00133         }
00140         protected void BTNsearch_Click(object sender, EventArgs e)
00141         {
00142             divSearch.Disabled = true;
00143             RADEVSearchResult result = GetResult(); ;
00144             ShowResult(result);
00145         }
00152         protected void GVresult_RowCommand(object sender, GridViewCommandEventArgs e)
00153         {
00154             if (e.CommandName == "View")
00155                 Response.Redirect(GetRedirectString(RADEVSearchResultRows[int.Parse((string)e.CommandArgument)].Id));
00156         }
00163         protected void DDLgeneral_SelectedIndexChanged(object sender, EventArgs e)
00164         {
00165             DDLpractice.DataSource = RADEVSearch.GetSpecificPracticeList(DDLgeneral.SelectedValue);
00166             DDLpractice.DataBind();
00167         }
00174         protected void BTNclear_Click(object sender, EventArgs e)
00175         {
00176             ClearCriterias(divSearch);
00177             HideControls();
00178         }
00185         protected void btnback_Click(object sender, EventArgs e)
00186         {
00187             divResult.Visible = false;
00188             divSearch.Visible = true;
00189             divSearch.Disabled = false;
00190            // divSaved.Visible = false;
00191             FillLists();
00192         }
00193         protected void btnAply_Click(object sender, EventArgs e)
00194         {
00195 
00196             RADEVCriterias criteria = new RADEVCriterias();
00197             RADEVSearchResult searchResultObject = GetResult();
00198             List<string> IAEAids = new List<string>();
00199             foreach (RADEVRow row in searchResultObject.GetResult())
00200                 IAEAids.Add(row.EventID);
00201             criteria.IAEAEventIDs = IAEAids;
00202             SetReportType(criteria, Request.Form["rblReportType"]);
00203             Session["ReportName"] = "RADEVReport_" + DateTime.Today.ToString("dd-MM-yyyy");
00204             Session["RADEV_CRITERIAS"] = criteria;
00205             Response.Redirect("RADEVReport.aspx");
00206         }
00207         protected void BTNExport_Click(object sender, EventArgs e)
00208         {
00209             Response.Clear();
00210             Response.ContentType = "text/plain";
00211             Response.AddHeader("Content-Disposition", "attachment;filename=RADEVReport_" + DateTime.Today.ToString("dd-MM-yyyy") + ".csv");
00212             WriteCSVToResponce();
00213             Response.End();
00214         }
00215         #endregion
00216         #region Private helper methods
00217 
00220         private void HideControls()
00221         {
00222             HideControl(CBgeneralsector, new Control[] { DDLgeneral });
00223             HideControl(CBspecificpractice, new Control[] { DDLpractice });
00224             HideControl(CByear, new Control[] { TXTfromdate, TXTtodate });
00225             HideControl(CBwholebodyexposure, new Control[] { TXTexposurefrom, TXTexposureto });
00226             HideControl(CBdeterministicspecific, new Control[] { DDLdeterministicspecific });
00227             HideControl(CBhealthcon, new Control[] { DDLhealthcon });
00228             HideControl(CBorgan, new Control[] { DDLorgan });
00229             HideControl(CBconsequence, new Control[] { DDLconsequence });
00230             HideControl(CBcause, new Control[] { DDLcause });
00231             HideControl(CBradio, new Control[] { DDLradio });
00232             HideControl(CBsource, new Control[] { DDLCategory });
00233             HideControl(CBradiosource, new Control[] { TXTsourcefrom, TXTsourceto });
00234             HideControl(CBcorrective, new Control[] { TXTcorrective });
00235             HideControl(CBlessons, new Control[] { TXTlessons });
00236             HideControl(CBnarrative, new Control[] { TXTnarrative });
00237             HideControl(CBEventsExtent, new Control[] { DDLExtent });
00238             HideControl(CBResponse, new Control[] { DDLResponse });
00239             HideControl(cbSavedName, new Control[] { savedName });
00240             HideControl(cbLoadCreteria, new Control[] { DDLsaved });
00241             HideControl(CBfacility, new Control[] { DDLfacility });
00242             HideControl(CBeventid, new Control[] { DDLeventid });
00243         }
00249         private void HideControl(CheckBox source, Control[] destinates)
00250         {
00251             for (int i = 0; i < destinates.Length; i++)
00252             {
00253                 if (destinates[i] is TextBox)
00254                     ((TextBox)destinates[i]).Enabled = source.Checked;
00255                 else if (destinates[i] is DropDownList)
00256                     ((DropDownList)destinates[i]).Enabled = source.Checked;
00257                 #if DEBUG
00258                 else
00259                     throw new Exception("Unknown type");
00260                 #endif
00261             }
00262         }
00266         private void InitControls()
00267         {
00268             SetEvent(CBgeneralsector, new Control[]{DDLgeneral});
00269             SetEvent(CBspecificpractice, new Control[]{DDLpractice});
00270             SetEvent(CByear, new Control[] { TXTfromdate, TXTtodate });
00271             SetEvent(CBwholebodyexposure, new Control[] { TXTexposurefrom, TXTexposureto });
00272             SetEvent(CBdeterministicspecific, new Control[] { DDLdeterministicspecific });
00273             SetEvent(CBhealthcon, new Control[] { DDLhealthcon });
00274             SetEvent(CBorgan, new Control[] { DDLorgan });
00275             SetEvent(CBconsequence, new Control[] { DDLconsequence });
00276             SetEvent(CBcause, new Control[] { DDLcause });
00277             SetEvent(CBradio, new Control[] { DDLradio });
00278             SetEvent(CBsource, new Control[] { DDLCategory });
00279             SetEvent(CBradiosource, new Control[] { TXTsourcefrom, TXTsourceto });
00280             SetEvent(CBcorrective, new Control[] { TXTcorrective });
00281             SetEvent(CBlessons, new Control[] { TXTlessons });
00282             SetEvent(CBnarrative, new Control[] { TXTnarrative });
00283             SetEvent(CBEventsExtent, new Control[] { DDLExtent});
00284             SetEvent(CBResponse, new Control[] { DDLResponse });
00285             SetEvent(cbSavedName, new Control[] { savedName });
00286             SetEvent(cbLoadCreteria, new Control[] { DDLsaved });
00287             SetEvent(CBfacility, new Control[] { DDLfacility });
00288             SetEvent(CBeventid, new Control[] { DDLeventid });
00289         }
00295         private void SetEvent(CheckBox source, Control[] destinates)
00296         {
00297             StringBuilder evnt = new StringBuilder();
00298             evnt.Append("Check('" + source.ClientID + "',[");
00299 
00300             for (int i = 0; i < destinates.Length; i++)
00301             {
00302                 if (i != 0) evnt.Append(",");
00303                 evnt.Append("'" + destinates[i].ClientID + "'");
00304             }
00305             evnt.Append("]);");
00306             source.Attributes["onclick"] = evnt.ToString();
00307         }
00312         private void ShowResult(RADEVSearchResult result)
00313         {
00314             List<RADEVRow> resultRows = result.GetResult();
00315             RADEVSearchResultRows = resultRows;
00316             GVresult.DataSource = resultRows;
00317             GVresult.DataBind();
00318             InitPage();
00319             LastSortCriteria = "";
00320             divResult.Visible = true;
00321             divSearch.Visible = false;
00322         }
00327         private List<RADEVSearchCriteria> GetSearchCriterias()
00328         {
00329             List<RADEVSearchCriteria> criterias = new List<RADEVSearchCriteria>();
00330 
00331             if (CBfacility.Checked && DDLfacility.Items.Count > 0)
00332             {
00333                 RADEVSearchCriteria criteria = RADEVSearch.CreateFacilityCriteria();
00334                 criteria.SetParameters(new string[] { DDLfacility.SelectedValue});
00335                 criterias.Add(criteria);
00336             }
00337 
00338             if (CByear.Checked)
00339             {
00340                 DateTime fromdate;
00341                 DateTime todate;
00342                 int fromdatei;
00343                 int todatei;
00344                 if (DateTime.TryParse(TXTfromdate.Text, out fromdate) && DateTime.TryParse(TXTtodate.Text, out todate))
00345                 {
00346                     RADEVSearchCriteria criteria = RADEVSearch.CreateYearCriteria();
00347                     criteria.SetParameters(new string[] { TXTfromdate.Text, TXTtodate.Text });
00348                     criterias.Add(criteria);
00349                 }
00350                 else if (int.TryParse(TXTfromdate.Text, out fromdatei) && int.TryParse(TXTtodate.Text, out todatei))
00351                 {
00352                     fromdate = new DateTime(fromdatei, 1, 1);
00353                     todate = new DateTime(todatei, 1, 1);
00354 
00355                     RADEVSearchCriteria criteria = RADEVSearch.CreateYearCriteria();
00356                     criteria.SetParameters(new string[] { fromdate.ToString("yyyyMMdd"), todate.ToString("yyyyMMdd") });
00357                     criterias.Add(criteria);
00358                 }
00359             }
00360 
00361             if (CBgeneralsector.Checked && !CBspecificpractice.Checked && DDLgeneral.Items.Count > 0)
00362             {
00363                 RADEVSearchCriteria criteria = RADEVSearch.CreateGeneralSectorCriteria();
00364                 criteria.SetParameters(new string[] { DDLgeneral.SelectedValue });
00365                 criterias.Add(criteria);
00366             }
00367 
00368             if (CBspecificpractice.Checked && DDLpractice.Items.Count > 0)
00369             {
00370                 RADEVSearchCriteria criteria = RADEVSearch.CreateSpecificPracticeCriteria();
00371                 criteria.SetParameters(new string[] { DDLpractice.SelectedValue });
00372                 criterias.Add(criteria);
00373             }
00374 
00375             if (CBworkers.Checked)
00376             {
00377                 RADEVSearchCriteria criteria = RADEVSearch.CreateWorkersCriteria();
00378                 criteria.SetParameters(new string[] { });
00379                 criterias.Add(criteria);
00380             }
00381 
00382             if (CBpublic.Checked)
00383             {
00384                 RADEVSearchCriteria criteria = RADEVSearch.CreatePublicCriteria();
00385                 criteria.SetParameters(new string[] { });
00386                 criterias.Add(criteria);
00387             }
00388 
00389             if (CBpatients.Checked)
00390             {
00391                 RADEVSearchCriteria criteria = RADEVSearch.CreatePatientsCriteria();
00392                 criteria.SetParameters(new string[] { });
00393                 criterias.Add(criteria);
00394             }
00395 
00396             if (CBdeterministicany.Checked)
00397             {
00398                 RADEVSearchCriteria criteria = RADEVSearch.CreateDeterministicEffectsCriteria();
00399                 criteria.SetParameters(new string[] {"null"});
00400                 criterias.Add(criteria);
00401             }
00402 
00403             if (CBdeterministicspecific.Checked && !CBdeterministicany.Checked && DDLdeterministicspecific.Items.Count > 0)
00404             {
00405                 RADEVSearchCriteria criteria = RADEVSearch.CreateDeterministicEffectsCriteria();
00406                 criteria.SetParameters(new string[] { DDLdeterministicspecific.SelectedValue });
00407                 criterias.Add(criteria);
00408             }
00409 
00410             if (CBhealthcon.Checked && DDLhealthcon.Items.Count > 0)
00411             {
00412                 RADEVSearchCriteria criteria = RADEVSearch.CreateHealthConsequencesCriteria();
00413                 criteria.SetParameters(new string[] { DDLhealthcon.SelectedValue });
00414                 criterias.Add(criteria);
00415             }
00416 
00417             if (CBorgan.Checked && DDLorgan.Items.Count > 0)
00418             {
00419                 RADEVSearchCriteria criteria = RADEVSearch.CreateDoseTypeCriteria();
00420                 criteria.SetParameters(new string[] { DDLorgan.SelectedValue });
00421                 criterias.Add(criteria);
00422             }
00423 
00424             if (CBradio.Checked && DDLradio.Items.Count > 0)
00425             {
00426                 RADEVSearchCriteria criteria = RADEVSearch.CreateRadiationNuclideCriteria();
00427                 criteria.SetParameters(new string[] { DDLradio.SelectedValue });
00428                 criterias.Add(criteria);
00429             }
00430 
00431             if (CBsource.Checked && DDLCategory.Items.Count > 0)
00432             {
00433                 RADEVSearchCriteria criteria = RADEVSearch.CreateCategoryCriteria();
00434                 criteria.SetParameters(new string[] { DDLCategory.SelectedValue });
00435                 criterias.Add(criteria);
00436             }
00437 
00438             if (CBEventsExtent.Checked && DDLExtent.Items.Count > 0)
00439             {
00440                 RADEVSearchCriteria criteria = RADEVSearch.CreateExtentEventsCriteria();
00441                 criteria.SetParameters(new string[] { DDLExtent.SelectedValue });
00442                 criterias.Add(criteria);
00443             }
00444 
00445             if (CBResponse.Checked && DDLResponse.Items.Count > 0)
00446             {
00447                 RADEVSearchCriteria criteria = RADEVSearch.CreateResponseEventsCriteria();
00448                 criteria.SetParameters(new string[] { DDLResponse.SelectedValue });
00449                 criterias.Add(criteria);
00450             }
00451 
00452             if (CBconsequence.Checked && DDLconsequence.Items.Count > 0)
00453             {
00454                 RADEVSearchCriteria criteria = RADEVSearch.CreateConcequencesCriteria();
00455                 criteria.SetParameters(new string[] { DDLconsequence.SelectedValue });
00456                 criterias.Add(criteria);
00457             }
00458 
00459             if (CBcause.Checked && DDLcause.Items.Count > 0)
00460             {
00461                 RADEVSearchCriteria criteria = RADEVSearch.CreateCauseCriteria();
00462                 criteria.SetParameters(new string[] { DDLcause.SelectedValue });
00463                 criterias.Add(criteria);
00464             }
00465 
00466             if (CBradiosource.Checked)
00467             {
00468                 int parameter;
00469                 if (int.TryParse(TXTsourcefrom.Text, out parameter) && int.TryParse(TXTsourceto.Text, out parameter))
00470                 {
00471                     RADEVSearchCriteria criteria = RADEVSearch.CreateSourceActivityCriteria();
00472                     criteria.SetParameters(new string[] { TXTsourcefrom.Text, TXTsourceto.Text });
00473                     criterias.Add(criteria);
00474                 }
00475             }
00476 
00477             if (CBwholebodyexposure.Checked)
00478             {
00479                 int parameter;
00480                 if (int.TryParse(TXTexposurefrom.Text, out parameter) && int.TryParse(TXTexposureto.Text, out parameter))
00481                 {
00482                     RADEVSearchCriteria criteria = RADEVSearch.CreateWholeBodyCriteria();
00483                     criteria.SetParameters(new string[] { TXTexposurefrom.Text, TXTexposureto.Text });
00484                     criterias.Add(criteria);
00485                 }
00486             }
00487 
00488             if (CBnarrative.Checked)
00489             {
00490                 RADEVSearchCriteria criteria = RADEVSearch.CreateNarativeCriteria();
00491                 criteria.SetParameters(new string[] { TXTnarrative.Text });
00492                 criterias.Add(criteria);
00493             }
00494 
00495             if (CBlessons.Checked)
00496             {
00497                 RADEVSearchCriteria criteria = RADEVSearch.CreateLessonsLearnedCriteria();
00498                 criteria.SetParameters(new string[] { TXTlessons.Text });
00499                 criterias.Add(criteria);
00500             }
00501 
00502             if (CBcorrective.Checked)
00503             {
00504                 RADEVSearchCriteria criteria = RADEVSearch.CreateCorrecActionCriteria();
00505                 criteria.SetParameters(new string[] { TXTcorrective.Text });
00506                 criterias.Add(criteria);
00507             }
00508             
00509             return criterias;
00510         }
00516         private string GetRedirectString(int id)
00517         {
00518             string xPath = "//SiteMap/Category[@Name='Input']/Subcategory[@Name='Radiation Events']/Mask[@Name='Radiation Events']";
00519             int maskId = 315;
00520             int.TryParse(ApplicationLogicLayer.UserManagement.GetSiteMapByUser(this.CurrentUser, false).SelectSingleNode(xPath).Attributes["ID"].Value, out maskId);
00521             DynamicMaskData dynamicMaskData = UI.Common.DynamicMaskManagement.GetDynamicMaskData(
00522                 315, 0, 0, this.CurrentUser, false);
00523             
00524             
00525             return UI.Common.DynamicMaskManagement.GetDynamicMaskReference(dynamicMaskData, maskId , 0 + 1, id, id, false);
00526             
00527         }
00531         private void ClearCriterias(Control control)
00532         {
00533             foreach (Control contr in control.Controls)
00534             {
00535                 if (contr is CheckBox)
00536                     ((CheckBox)contr).Checked = false;
00537                 else if(contr.HasControls())
00538                     ClearCriterias(contr);
00539             }
00540         }
00544         private void FillLists()
00545         {
00546             DDLfacility.DataSource = RADEVSearch.GetFacilityList(this.CurrentUser.ID);
00547             DDLfacility.DataBind();
00548 
00549             DDLgeneral.DataSource = RADEVSearch.GetGeneralSectorList();
00550             DDLgeneral.DataBind();
00551 
00552             DDLpractice.DataSource = RADEVSearch.GetSpecificPracticeList(DDLgeneral.SelectedValue);
00553             DDLpractice.DataBind();
00554 
00555             DDLdeterministicspecific.DataSource = RADEVSearch.GetDeterministicEffectsList();
00556             DDLdeterministicspecific.DataBind();
00557 
00558             DDLhealthcon.DataSource = RADEVSearch.GetHealthConsequencesList();
00559             DDLhealthcon.DataBind();
00560 
00561             DDLorgan.DataSource = RADEVSearch.GetDoseTypeList();
00562             DDLorgan.DataBind();
00563 
00564             DDLradio.DataSource = RADEVSearch.GetRadiationNuclideList();
00565             DDLradio.DataBind();
00566 
00567             DDLCategory.DataSource = RADEVSearch.GetCategoryList();
00568             DDLCategory.DataBind();
00569 
00570             DDLExtent.DataSource = RADEVSearch.GetExtentEventsList();
00571             DDLExtent.DataBind();
00572 
00573             DDLResponse.DataSource = RADEVSearch.GetResponseEventsList();
00574             DDLResponse.DataBind();
00575 
00576             DDLconsequence.DataSource = RADEVSearch.GetConcequencesList();
00577             DDLconsequence.DataBind();
00578 
00579             DDLcause.DataSource = RADEVSearch.GetCauseList();
00580             DDLcause.DataBind();
00581 
00582             DDLsaved.DataSource = RADEVSearch.GetSavedSearchCriterias();
00583             DDLsaved.DataBind();
00584 
00585             DDLeventid.DataSource = RADEVSearch.GetRadevIDs(this.CurrentUser.ID);
00586             DDLeventid.DataBind();
00587         }
00588 
00589         private void WriteCSVToResponce()
00590         {
00591             RADEVCriterias criteria = new RADEVCriterias();
00592             RADEVSearchResult searchResultObject = GetResult();
00593             List<string> IAEAids = new List<string>();
00594             foreach (RADEVRow row in searchResultObject.GetResult())
00595                 IAEAids.Add(row.EventID);
00596             criteria.IAEAEventIDs = IAEAids;
00597 
00598             StringBuilder sb = new System.Text.StringBuilder();
00599             StringWriter sw = new StringWriter(sb);
00600                 Response.Write("Event ID");
00601                 Response.Write(";");
00602                 Response.Write("Date");
00603                 Response.Write(";");
00604                 Response.Write("Use sector (Practice)");
00605                 Response.Write(";");
00606                 Response.Write("Contact organization");
00607                 Response.Write(";");
00608                 Response.Write("Report status");
00609                 Response.Write(";");
00610 
00611             Response.Write("\n");
00612             Response.Write("\n");
00613 
00614             foreach(RADEVTable RADEV in ReportManagement.GetRADEVLineList(ConfigurationManager.AppSettings["RADEVProvider"].ToLower(), criteria))
00615             {
00616                 EventMaster ev = (EventMaster)RADEV;
00617                 Response.Write(ev.IAEAEventID);
00618                 Response.Write(";");
00619                 Response.Write(ev.EventDate);
00620                 Response.Write(";");
00621                 Response.Write(ev.GeneralUseSector);
00622                 Response.Write(";");
00623                 Response.Write(ev.ContactOrganization);
00624                 Response.Write(";");
00625                 Response.Write(ev.ContactCrossRef);
00626                 Response.Write(";");
00627                 Response.Write("\n");
00628             }
00629         }
00630 
00631         private RADEVSearchResult GetResult()
00632         {
00633             RADEVSearchResult ret;
00634             if (cbLoadCreteria.Checked && DDLsaved.Items.Count > 0)
00635                 ret = RADEVSearchResult.LoadCriterias(int.Parse(DDLsaved.SelectedValue), this.CurrentUser.ID);
00636             else if (CBeventid.Checked && DDLeventid.Items.Count > 0)
00637             {
00638                 int redevid = int.Parse(DDLeventid.SelectedValue);
00639                 ret = new RADEVSearchResult(redevid, GetSearchCriterias(), this.CurrentUser.ID,
00640                                             RadioButtonList1.SelectedIndex == 1);
00641             }
00642             else
00643                 ret = new RADEVSearchResult(GetSearchCriterias(), this.CurrentUser.ID, RadioButtonList1.SelectedIndex == 1);
00644             if (cbSavedName.Checked && savedName.Text != "")
00645                 RADEVSearch.SaveSearchCriterias(savedName.Text, ret.SearchCommand);
00646             return ret;
00647         }
00648         private void ValidateData() 
00649         {
00650             if (Request["DataType"] == "Int")
00651             {
00652                 int parameter1;
00653                 int parameter2;
00654                 if (int.TryParse(Request["Parameter1"], out parameter1) && int.TryParse(Request["Parameter2"], out parameter2)
00655                     && parameter1 < parameter2
00656                     )
00657                     Response.Write("");
00658                 else
00659                     Response.Write("false");
00660             }
00661             else if (Request["DataType"] == "Date")
00662             {
00663                 DateTime parameter1;
00664                 DateTime parameter2;
00665 
00666                 int parameter1i;
00667                 int parameter2i;
00668                 if (DateTime.TryParse(Request["Parameter1"], out parameter1) && DateTime.TryParse(Request["Parameter2"], out parameter2)
00669                     && parameter1 < parameter2
00670                     )
00671                     Response.Write("");
00672                 else if (int.TryParse(Request["Parameter1"], out parameter1i) && int.TryParse(Request["Parameter2"], out parameter2i)
00673                     && parameter1i < parameter2i)
00674                     Response.Write("");
00675                 else
00676                     Response.Write("false");
00677             }
00678             Response.End();
00679         }
00680         private void InitPage()
00681         {
00682             this.LBLusernameNoTranslation.Text = this.CurrentUser.Name;
00683             UI.Common.PageManagement.InitializePageTreeForCategory(this, this.TreeView1, RAIS.Common.Constants.CATEGORY_NAME_TOOLS);            
00684  //           this.LBTNmessagebox.Visible = !(this.CurrentUser.FunctionalRole.Type == FunctionRole.FunctionRoleType.Guest);
00685         }
00686         #endregion
00687         private void SetReportType(RADEVCriterias criteria, string name)
00688         {
00689             switch (name)
00690             {
00691                 case "One Line Report":
00692                     criteria.Type = ReportType.OneLine;
00693                     break;
00694                 case "Summary Report":
00695                     criteria.Type = ReportType.Summary;
00696                     break;
00697                 case "Complete Report":
00698                     criteria.Type = ReportType.Complete;
00699                     break;
00700             }
00701         }
00702         protected void GVresult_PageIndexChanging(object sender, GridViewPageEventArgs e)
00703         {
00704             this.GVresult.DataSource = RADEVSearchResultRows;
00705             // Set new page index
00706             this.GVresult.PageIndex = e.NewPageIndex;
00707 
00708             // Bind data to the GridView
00709             this.GVresult.DataBind();
00710         }
00711         protected void GVresult_Sorting(object sender, GridViewSortEventArgs e)
00712         {
00713 
00714             RADEVSearchResultRows.Sort(new RADEVRowComparer(e.SortExpression, LastSortCriteria == e.SortExpression));
00715             GVresult.DataSource = RADEVSearchResultRows;
00716             GVresult.DataBind();
00717             LastSortCriteria = LastSortCriteria == e.SortExpression ? "" : e.SortExpression;
00718         }
00719     }
00720 }